package com.vcourse.service.trade.service;

import com.vcourse.service.trade.entity.Order;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 订单 服务类
 * </p>
 *
 * @author Zengsh123
 * @since 2020-06-13
 */
public interface OrderService extends IService<Order> {
    /**
     * 新增订单
     * @param courseId 课程id
     * @param id 用户id
     * @return 订单id
     */
    String saveOrder(String courseId, String id);

    /**
     * 查询订单详情
     * @param orderId 订单id
     * @param id 用户id
     */
    Order getByOrderId(String orderId, String id);

    /**
     * 判断课程是否已购买
     * @param courseId 课程id
     * @param id 用户id
     * @return 是否
     */
    Boolean isBuyByCourseId(String courseId, String id);

    /**
     * 查询订单列表
     * @param memberId 会员id
     * @return 订单列表
     */
    List<Order> selectByMemberId(String memberId);

    /**
     * 删除订单
     * @param orderId 订单id
     * @param memberId 会员id
     * @return 是否成功
     */
    boolean removeById(String orderId, String memberId);
}
